/* 
1 根据中文的地理位置，来控制 map标签 显示对应的位置
  1 有变量 locationName = "中国广州吉山幼儿园" 
  2 调用地图api，实现  根据 中文-> 经纬度
  3 获取到经纬度，传递给map标签 即可 
 */
import qqmap from '../../../utils/qqmap'
Page({
  data: {
    latitude: '',
    longitude: '',
    locationName: '中国广州吉山幼儿园',
    //保修详情
    repairInfo: null,
  },
  onLoad({ id }) {
    this.getRepairInfo(id)
    this.geocoder(this.data.locationName)
  },
  //根据id查询保修详情
  async getRepairInfo(id) {
    const res = await wx.http({ url: `/repair/${id}` })
    console.log(res);
    this.setData({
      repairInfo: res.data
    })
  },
  //根据地理位置描述获取经纬度
  geocoder(address) {
    qqmap.geocoder({
      address,
      success: (res) => {
        // console.log(res)
        const latitude = res.result.location.lat
        const longitude = res.result.location.lng
        this.setData({ latitude, longitude })
      },
    })
  },
  //跳转到 新增-编辑保修页面
  onGoUpdateRepair() {
    wx.navigateTo({
      url: '/repair_pkg/pages/form/index?id=' + this.data.repairInfo.id,
    })
  },
  //取消报修
  onCancelRepair() {
    /* 
   1 弹出确认框询问用户 是否要取消
   2 发送请求完成 取消 
   3 提示用户 取消成功
   4 等待一会 跳回到 报修列表
    */
    wx.showModal({
      title: '提示',
      content: '您确认要取消吗?',
      success: async ({ confirm }) => {
        if (confirm) {
          //确定取消
          const res = await wx.http({
            url: `/cancel/repaire/${this.data.repairInfo.id}`,
            method: 'put'
          })
          console.log(res);
          if (res.code !== 10000) {
            return wx.utils.toast(res.message) //没有 打勾 图标
          }

          // 默认 有成功 打勾图标提示
          wx.showToast({
            title: '取消成功',
          })
          setTimeout(() => {
            wx.navigateTo({ url: '/repair_pkg/pages/list/index' })
          }, 1500)
        }
      }
    })
  }
})
